using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Kugar.ERPFramework.Entity;
using Kugar.Core.BaseStruct;

namespace Kugar.ERPFramework.BLLInterface.Business
{

    public interface IAuditable
    {
        bool IsAuditable(Entity.EntityBase entity);
        bool IsAuditable(string entityID);

        ResultReturn Audit(Entity.EntityBase entity);
        ResultReturn Audit(string entityID);

        ResultReturn Audit(IEnumerable<Entity.EntityBase> entityList);
        ResultReturn Audit(IEnumerable<string> entityIDList);
    }

    public interface IAntiAuditable
    {
        bool IsAntiAuditable(Entity.EntityBase entity);
        bool IsAntiAuditable(string entityID);

        ResultReturn AntiAuditable(Entity.EntityBase entity);
        ResultReturn AntiAuditable(string entityID);

        ResultReturn AntiAuditable(IEnumerable<Entity.EntityBase> entityList);
        ResultReturn AntiAuditable(IEnumerable<string> entityIDList);
    }
}
